<!DOCTYPE html>
<html lang="en" data-ng-app="myApp">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta charset="utf-8"/>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta name="viewport"
          content="width=device-width, initial-scale=1, maximum-scale=1"/>
    <title>自动化运维工具</title>
    <link href="/beetle/App/css/bootstrap.min.css" rel="stylesheet">

    <!--<link href="/beetle/App/css/bootstrap-theme.min.css" rel="stylesheet">-->
    <link href="/beetle/App/lte/assets/animate.css/animate.css" rel="stylesheet">
    <link href="/beetle/App/lte/assets/font-awesome/css/font-awesome.min.css" rel="stylesheet">
    <link href="/beetle/App/lte/assets/simple-line-icons/css/simple-line-icons.css" rel="stylesheet">

    <link href="/beetle/App/css/angular-diff.css" rel="stylesheet">
    <link href="/beetle/App/css/angular-material.min.css" rel="stylesheet">
    <link href="/beetle/App/css/angular-ui-switch.min.css" rel="stylesheet">
    <link href="/beetle/App/css/select.min.css" rel="stylesheet">
    <link href="/beetle/App/css/selectize.default.css" rel="stylesheet">

    <!-- tree -->
    <link href="/beetle/App/css/tree-control.css" rel="stylesheet">
    <link href="/beetle/App/css/tree-control-attribute.css" rel="stylesheet">

    <link href="/beetle/App/lte/css/AdminLTE.css" rel="stylesheet">
    <link href="/beetle/App/lte/css/skins/_all-skins.min.css" rel="stylesheet">

    <link href="/beetle/App/css/fileinput.min.css" rel="stylesheet">

    <link href="/beetle/App/css/ngDialog/ngDialog.min.css" rel="stylesheet">
    <link href="/beetle/App/css/ngDialog/ngDialog-theme-default.min.css" rel="stylesheet">

    <!--<link href="/beetle/App/css/app.css" rel="stylesheet">-->
    <!--<link href="/beetle/App/css/font.css" rel="stylesheet">-->

    <style>
        table tbody tr:hover {
            background-color: #efefef;
        }

        .dropdown-menu {
            max-height: 100px;
            overflow: auto;
        }

        .content {
            padding: 0px !important;
        }

        .i_class {
            font-size: 18px;
            width: 22px;
        }

        .btn_class {
            padding: 0px 4px;
        }

        .header_icon {
            background-color: #367fa9;
            color: #fff;
            height: 50px;
            line-height: 50px;
            font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
            font-size: 20px;
            font-weight: 300;
            padding-left: 15px;
            padding-right: 15px;
        }
    </style>
</head>
<body class="skin-blue sidebar-mini sidebar-collapse" ng-controller="MenuController" style="font-family: 微软雅黑;"
      onfocus="myApp.focus()">

<div class="wrapper">

    <header class="main-header" style="z-index: 500">
        <!-- Logo -->
        <!-- Header Navbar: style can be found in header.less -->
        <!-- Header Navbar: style can be found in header.less -->
        <nav class="navbar navbar-static-top" role="navigation">
            <!-- Sidebar toggle button-->
            <span ng-if="isUserCanOperateByRole('plan_admin');">
                <a ng-repeat="user in info.planAdminList" href="javascript:void(0)" ng-click="cancelPlanAdmin(user);"
                   class="sidebar-toggle">{{user.realname}}
                </a>
            </span>
            <div class="navbar-custom-menu">
                <ul class="nav navbar-nav">
                    <!-- User Account: style can be found in dropdown.less -->
                    <li class="dropdown user user-menu"><a
                            href="javascript:void(0)" class="dropdown-toggle"
                            data-toggle="dropdown">
                        <img src="/beetle/App/lte/img/user2-160x160.jpg" class="user-image" alt="User Image"/>
                        <span class="hidden-xs" data-ng-bind="userRole"></span>
                    </a>
                        <ul class="dropdown-menu" style="max-height: 350px!important;">
                            <!-- User image -->
                            <li class="user-header"><img src="/beetle/App/lte/img/user2-160x160.jpg"
                                                         class="img-circle" alt="User Image"/>
                                <p data-ng-bind="userName">
                                    Admin - Admin
                                    <small></small>
                                </p>
                            </li>
                            <!-- Menu Footer-->
                            <li class="user-footer">
                                <div>
                                    <a ng-if="isUserCanOperateByRole('plan_admin')"
                                       class="btn btn-default btn-flat" ng-click="assignRole();">plan_admin</a>
                                    <a class="btn btn-default btn-flat" ng-click="gotoUpdatePass();">修改密码</a>
                                    <a href="javascript:void(0);" data-ng-click="loginOut();" style="float: right;"
                                       class="btn btn-default btn-flat">登出</a>
                                </div>
                            </li>
                        </ul>
                    </li>
                </ul>
            </div>
        </nav>
    </header>

    <!--菜单-->

    <aside class="main-sidebar" style="padding-top: 0;">
        <div class="header_icon">
            <i class="fa fa-btc"></i>
        </div>
        <section class="sidebar">
            <ul class="sidebar-menu">
                <li class="treeview" ng-repeat="menu in menus">
                    <a ui-sref="{{menu.menu_url}}" ng-if="menu.child_menu_list.length==0 && menu.menu_status == 0">
                        <i class="{{menu.menu_css}}"></i>
                        <span>{{menu.menu_name}}</span>
                    </a>
                    <a href="javascript:void(0);"
                       ng-if="isnull(menu.menu_url) && menu.child_menu_list.length>0 && menu.menu_status == 0">
                        <i class="{{menu.menu_css}}"></i>
                        <span>{{menu.menu_name}}</span>
                        <i class="fa fa-angle-left pull-right"></i>
                    </a>
                    <a ui-sref="{{menu.menu_url}}"
                       ng-if="!isnull(menu.menu_url) && menu.child_menu_list.length>0 && menu.menu_status == 0">
                        <i class="{{menu.menu_css}}"></i>
                        <span>{{menu.menu_name}}</span>
                        <i class="fa fa-angle-left pull-right"></i>
                    </a>
                    <ul class="treeview-menu" ng-if="menu.child_menu_list.length>0 && menu.menu_status == 0">
                        <li ui-sref-active="active" ng-repeat="t in menu.child_menu_list" ng-if="t.menu_status == 0">
                            <a ui-sref="{{t.menu_url}}"><i class="{{t.menu_css}}"></i>{{t.menu_name}}</a>
                        </li>
                    </ul>
                </li>
            </ul>
        </section>
    </aside>

    <div class="content-wrapper">
        <div class="app" id="app" ui-view></div>
    </div>


</div>
<!--通用弹窗 start-->
<script type="text/ng-template" id="popupConfirm.html">
    <div class="dialog-contents">
        <div ng-bind-html="dialogHtml" style="overflow: auto;"></div>
        <br>
        <div class="ngdialog-buttons">
            <button type="button" ng-if="dialogNo" class="ngdialog-button ngdialog-button-secondary"
                    ng-click="closeThisDialog(false)">{{no_text}}
            </button>
            <button type="button" ng-if="dialogYes" class="ngdialog-button ngdialog-button-primary"
                    ng-click="closeThisDialog(true)">{{yes_text}}
            </button>
            <button type="button" ng-if="dialogClose" class="ngdialog-button ngdialog-button-primary"
                    ng-click="closeThisDialog(close)">{{close_text}}
            </button>
        </div>
    </div>
</script>
<!--通用加载  start-->
<script type="text/ng-template" id="LoadConfirm.html">
    <img src="/beetle/image/loading.gif"><span>正在加載中，請稍候......</span>
</script>
<!--通用弹窗 end-->
<!--下拉菜单 start-->
<script type="text/ng-template" id="selectTemplate.html">
    <a>
        <span ng-bind-html="match.label | uibTypeaheadHighlight:query"></span>
    </a>
</script>
<!--下拉菜单 end-->
<!--为qa分配plan_admin权限 start-->
<script type="text/ng-template" id="assignRole.html">
    <div class="modal-header">
        选择qa赋予临时plan_admin权限,权限到期后需手动回收
    </div>
    <div class="modal-body">
        <input type="text" ng-model="info.userInfo"
               uib-typeahead="user as user.realname for user in info.list | filter:{realname:$viewValue}|limitTo:15"
               typeahead-template-url="selectTemplate.html" class="form-control" typeahead-show-hint="true"
               typeahead-min-length="0" typeahead-select-on-blur="true">
    </div>
    <div class="modal-footer">
        <button class="btn btn-primary" type="button" ng-click="save();">保存</button>
        <button class="btn btn-primary" type="button" ng-click="cancel();">关闭</button>
    </div>
</script>
<!--为qa分配plan_admin权限 end-->
<!--弹窗带checkbox start-->
<script type="text/ng-template" id="checkAlert.html">
    <div class="modal-header">
    </div>
    <div class="modal-body">
        <span>{{info.dialogHtml}}</span>
        <br>
        <br>
        <input type="checkbox" ng-model="info.check" ng-true-value="true" ng-false-value="false">
        <span style="margin-left: 2%;">{{info.msg}}</span>
    </div>
    <div class="modal-footer">
        <button class="btn btn-primary" style="margin-right: 5%;" type="button" ng-click="save();">是</button>
        <button class="btn btn-primary" style="margin-right: 5%;" type="button" ng-click="cancel();">否</button>
    </div>
</script>
<!--弹窗带checkbox end-->
<!--提交测试 添加申请记录弹出框 start-->
<div data-ng-include="'../App/module/template/tpl/edition_to_test_template.html'"></div>
<!--提交测试 添加申请记录弹出框 end-->
<!--处理提交版本记录弹出框 start-->
<div data-ng-include="'../App/module/template/tpl/edition_integration_template.html'"></div>
<!--处理提交版本记录弹出框 end-->
<!--为项目添加工程弹出框 start-->
<div data-ng-include="'../App/module/template/tpl/add_plan_project.html'"></div>
<!--为项目添加工程弹出框 end-->
<!--切换项目工程弹出框 start-->
<div data-ng-include="'../App/module/template/tpl/change_plan_project.html'"></div>
<!--切换项目工程弹出框 end-->
<!--文件上传弹出框 start-->
<div data-ng-include="'../App/module/template/tpl/file_upload.html'"></div>
<!--文件上传弹出框 end-->

<script src="/beetle/App/lib/jquery.js"></script>
<script src="/beetle/App/lte/browser/jquery.browser.min.js"></script>
<!--Angular about-->
<script src="/beetle/App/lib/angular.min.js"></script>
<script src="/beetle/App/lib/angular-ui-router.js"></script>
<script src="/beetle/App/lib/angular-animate.min.js"></script>
<script src="/beetle/App/lib/angular-locale_zh.js"></script>

<script src="/beetle/App/lib/angular-diff-match-patch.js"></script>
<script src="/beetle/App/lib/diff_match_patch.js"></script>

<script src="/beetle/App/lib/angular-aria.min.js"></script>
<script src="/beetle/App/lib/angular-material.min.js"></script>

<script src="/beetle/App/lib/ng-file-upload.min.js"></script>
<script src="/beetle/App/lib/ng-file-upload-shim.min.js"></script>

<script src="/beetle/App/lib/angular-ui-switch.min.js"></script>
<!--others-->
<script src="/beetle/App/lib/ui-bootstrap-tpls-1.2.5.min.js"></script>
<script src="/beetle/App/lib/bootstrap.min.js"></script>

<script src="/beetle/App/lib/angular-sanitize.js"></script>
<script src="/beetle/App/lib/es5-shim.js"></script>

<!-- ui-select files -->
<script src="/beetle/App/lib/select.min.js"></script>
<!-- themes -->

<!--file input-->
<script src="/beetle/App/lib/fileInput/fileinput.min.js"></script>
<script src="/beetle/App/lib/fileInput/zh.js"></script>

<script src="/beetle/App/lib/ng-clip.min.js"></script>
<script src="/beetle/App/lib/ZeroClipboard.min.js"></script>

<!--ws 断开重连-->
<script src="/beetle/App/lib/reconnecting-websocket.min.js"></script>
<!--ngDialog-->
<script src="/beetle/App/lib/ngDialog/ngDialog.min.js"></script>

<script src="/beetle/App/lib/socket.io.min.js"></script>

<script src="/beetle/App/lte/js/app.js"></script>
<!-- tree -->
<script src="/beetle/App/lib/angular-tree-control.js"></script>

<!--Beetle sources-->

<script>
    var random = new Date().getTime();
    document.write('<script src="/beetle/config.js?' + random + '"><' + '/script>');
    <!-- 将下面js压缩 -->
    document.write('<script src="/beetle/App/lib/beetle.min.js?' + random + '"><' + '/script>');

    // document.write('<script src="/beetle/App/common/common.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/common/http.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/common/dialog.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/common/showLoading.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/router.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/common/websocket.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/menu/controller/Menu.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/menu/controller/MenuSet.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/jumpServer/controller/JumpServerEdit.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/jumpServer/controller/JumpServerList.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/pushRecord/controller/PushRecord.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/resource/controller/configFile.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/project/controller/ProjectList.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/project/controller/ProjectEdit.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/user/controller/UserController.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/user/controller/roleController.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/hotDeployment/controller/deploy.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/hotDeployment/controller/serverConfig.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/project/controller/Project.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/login/controller/login.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/ucList.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/ucProgress.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/ucRelease.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/ucInit.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/ucAlylist.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/newucList.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/newucRelease.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/planProject/controller/plan_Guide.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/planProject/controller/planList.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/planProject/controller/plan_ProjectList.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/integration/controller/list.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/integration/controller/init.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/integration/controller/set.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/emergencyPlan/controller/list.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/emergencyPlan/controller/info.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/template/controller/edition_to_test_template.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/template/controller/edition_integration_template.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/template/controller/add_plan_project.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/template/controller/change_plan_project.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/template/controller/check_alert.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/template/controller/file_upload.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uBarrier/controller/barrier.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uBarrier/controller/ubarrierAuto.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/authorizeC.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/addZoneAndApp.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/zalist.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/machinelist.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/common/controller/urllist.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/uCloud/controller/addMachine.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/prod/controller/export.js?' + random + '"><' + '/script>');
    // document.write('<script src="/beetle/App/module/prod/controller/clean.js?' + random + '"><' + '/script>');
</script>
</body>
</html>